<
programming> (OOP) The use of a class of programming
languages and techniques based on the concept of an "
object"
which is a data structure (
abstract data type) encapsulated
with a set of routines, called "
methods", which operate on
the data. Operations on the data can __only__ be performed via
these methods, which are common to all objects that are
instances of a particular "
class". Thus the interface to
objects is well defined, and allows the code implementing the
methods to be changed so long as the interface remains the
same.
Each class is a separate
module and has a position in a
"
class hierarchy". Methods or code in one class can be
passed down the hierarchy to a
subclass or inherited from a
superclass. This is called "
inheritance".
A
procedure call is described as invoking a method on an
object (which effectively becomes the procedure's first
argument), and may optionally include other arguments. The
method name is looked up in the object's class to find out how
to perform that operation on the given object. If the method
is not defined for the object's class, it is looked for in its
superclass and so on up the class hierarchy until it is found
or there is no higher superclass.
OOP started with
SIMULA-67 around 1970 and became
all-pervasive with the advent of
C++, and later
Java.
Another popular object-
oriented programming
language (OOPL) is
Smalltalk, a seminal example from
Xerox's {Palo Alto
Research Center} (PARC). Others include
Ada, {Object
Pascal},
Objective C,
DRAGOON,
BETA,
Emerald,
POOL,
Eiffel,
Self,
Oblog,
ESP,
Loops,
POLKA, and
Python. Other
languages, such as
Perl and
VB, permit,
but do not enforce OOP.
oriented programmingscg/OOinfo/FAQ/">FAQ (http://iamwww.unibe.ch/object-oriented programmingscg/OOinfo/FAQ/).
http://zgdv.igd.fhg.de/papers/se/oop/.
http://cuiwww.unige.ch/Chloe/OOinfo.
Usenet newsgroup:
news:comp.object.
(2001-10-11)